home *** CD-ROM | disk | FTP | other *** search
-
- The QuickBASIC compiler offers a lot of needed features to compiled
- BASIC programs. Regretably, it also included a few "problems."
- For those who use RBBS-PC to "exit" to DOS (either via a "door" or
- as a remote SYSOP), the code generated by the QuickBASIC compiler
- would "help" you by dropping carrier when you chose to return to
- RBBS-PC from DOS or a "door." Help like this RBBS-PC didn't need.
-
- Jeff Porter, documented a "patch" to the BCOM10.LIB of the QuickBASIC
- compiler that corrects this problem within the logic of the code
- generated by the QuickBASIC compiler.
-
- As I state in RBBS-PC's documentation:
-
- "RBBS-PC continues to grow and expand because hundreds
- (and quite possibly thousands) of SYSOP's spend the
- time and trouble not only to modify RBBS-PC to meet
- their needs, but also to share these modifications
- with others."
-
- Jeff's contribution is available by simply downloading the file
- DTRPATCH.DOC.
-
- Please note that nowhere does Jeff describe the hours and hours
- it must have taken him to find the fix to the problem. Nowhere
- does he ask anything for himself for his efforts. As I have
- said so often "I am very proud of the company that RBBS-PC keeps."
-
- Tom Mack
- January 10, 1986
-
-
- DTR Fix for QuickBasic 2.1
- Rod Bowman
- 02-10-87
-
- Well, MicroSoft still has not fixed the other DTR problem from QB 2.0!
- Hopefully in the next release, which will be QB 3.0, they will take care
- of this one.
-
-
- This patch modifies the serial communication routines in the
- BCOM20.LIB file so that the DTR line will be not be turned off
- when running another program with the RUN Command of BASIC!
-
- Here is a transcript of a patch session. More detailed
- instructions follow it.
-
- A>copy bcom20.lib bcom20bk.lib
- 1 File(s) copied
-
- A>debug bcom20.lib
- -dD858 L 5
- xxxx:D858 83 C2 04 32 C0
- -aD85B
- xxxx:D85B mov al, 1
- xxxx:D85D
- -w
- Writing xxxxx bytes
- -q
-
-
- 1. Make a backup copy of the BCOM20.LIB file, just in case.
-
- 2. Run debug and load BCOM20.LIB
-
- A>debug bcom20.lib
-
- 3. Display the following sections of data and see that they
- match. This is to insure that you are patching the correct
- version of the library.
-
- -dD858 L 5
- xxxx:D858 83 C2 04 32 C0
-
- 4. If debug shows the same information as listed above, then
- you may continue with the patching process. If not, go to
- the section Patching other Library Files.
-
- 5. Do the following:
-
- -a D85B
- xxxx:D85B mov al, 1
- xxxx:D85D
-
- 6. Now write the file back to disk and quit debug. The patch
- is complete.
-
- -w
- Writing xxxxx bytes
- -q
-
-
- "The 'PC' Spectrum" (tm) RBBS-PC
- Rod Bowman
- P.O. Box #1546
- Cucamonga, CA 91730
- (714) 945-2612 (DATA)
-
-
- DTR Fix for QuickBasic 2.0
- Rod Bowman
- 09-11-86
-
- Well, we thought MicroSoft fixed all of the DTR problem from QB 1.x but they
- only fixed half of the problem! Maybe in the next release they will be able
- to get this one in there too!
-
-
- This patch modifies the serial communication routines in the
- BCOM20.LIB file so that the DTR line will be not be turned off
- when running another program with the RUN Command of BASIC!
-
- Here is a transcript of a patch session. More detailed
- instructions follow it.
-
- A>copy bcom20.lib bcom20bk.lib
- 1 File(s) copied
-
- A>debug bcom20.lib
- -dD368 L 5
- xxxx:D368 83 C2 04 32 C0 EE EB ..2...
- -aD36B
- xxxx:D36B mov al, 1
- xxxx:D36D
- -w
- Writing 2B000 bytes
- -q
-
-
- 1. Make a backup copy of the BCOM20.LIB file, just in case.
-
- 2. Run debug and load BCOM20.LIB
-
- A>debug bcom20.lib
-
- 3. Display the following sections of data and see that they
- match. This is to insure that you are patching the correct
- version of the library.
-
- -dD368 L 5
- xxxx:D368 83 C2 04 32 C0 EE EB ..2...
-
- 4. If debug shows the same information as listed above, then
- you may continue with the patching process. If not, go to
- the section Patching other Library Files.
-
- 5. Do the following:
-
- -a D36B
- xxxx:D36B mov al, 1
- xxxx:D36D
-
- 6. Now write the file back to disk and quit debug. The patch
- is complete.
-
- -w
- Writing bytes
- -q
-
-
- "The 'PC' Spectrum" (tm) RBBS-PC
- Rod Bowman
- P.O. Box #1546
- Cucamonga, CA 91730
- (714) 945-2612 (DATA)
-
-
- DTR Fix for QuickBasic 1.x
- Jeff Porter
- 1-5-86
-
- As anyone who has tried to write any programs that use COM1: or
- COM2: with MicroSoft QuickBasic knows, the DTR modem control line
- is dropped everytime a a communication file is opened or closed.
- I don't know why MicroSoft drops the DTR line all the time; all I
- know is that it can be a serious problem with programs such as
- RBBS-PC. Therefore, I present the following patch to fix the
- problem.
-
- This patch modifies the serial communication routines in the
- BCOM10.LIB file so that the DTR line will be not be turned off.
-
- Here is a transcript of a patch session. More detailed
- instructions follow it.
-
- C>copy bcom10.lib bcom10bk.lib
- 1 File(s) copied
-
- C>debug bcom10.lib
- -d540 L 10
- xxxx:0540 0B D2 75 04 B5 FF EB 34-FA 83 C2 04 32 C0 EE EB ..u....4....2...
- è-d830 L 10
- xxxx:0830 14 8B FA E8 00 00 83 C2-04 32 C0 EB 00 EE C7 47 .........2.....G
- -a54c
- xxxx:054C mov al, 1
- xxxx:054E
- -a839
- xxxx:0839 mov al, 1
- xxxx:083B
- -w
- Writing 25C00 bytes
- -q
-
-
- 1. Make a backup copy of the BCOM10.LIB file, just in case.
-
- 2. Run debug and load BCOM10.LIB
-
- C>debug bcom10.lib
-
- 3. Display the following sections of data and see that they
- match. This is to insure that you are patching the correct
- version of the library.
-
- -d540 L 10
- xxxx:0540 0B D2 75 04 B5 FF EB 34-FA 83 C2 04 32 C0 EE EB ..u....4....2...
- -d830 L 10
- xxxx:0830 14 8B FA E8 00 00 83 C2-04 32 C0 EB 00 EE C7 47 .........2.....G
-
- 4. If debug shows the same information as listed above, then
- you may continue with the patching process. If not, go to
- the section Patching other Library Files.
-
- 5. Do the following:
-
- -a 54c
- xxxx:054C mov al, 1
- xxxx:054E
- -a 839
- xxxx:0839 mov al, 1
- xxxx:083B
-
- 6. Now write the file back to disk and quit debug. The patch
- is complete.
-
- -w
- Writing bytes
- -q
-
-
- Patching other Library Files
-
- If you do not have MicroSoft QuickBasic or if you have a
- different version than I, you can probably still perform this
- patch. You will have to find the correct locations to patch.
- The addresses 054C and 0839 were found with the following
- èprocedure:
-
- 1. Search for the byte sequence 83 C2 04 32 C0 in the library
- file. If you are lucky, debug will find it in exactly two
- places.
-
- (for example:)
- -s 100 fff0 83 C2 04 32 C0
-
- 2. Unassemble the addresses you found. The first two
- instructions will be
-
- ADD DX, +04
- XOR AL, AL
-
- Within the next few instructions should be
-
- OUT DX, AL
-
- 3. If everything has gone correctly so far, just change the
-
- XOR AL, AL
-
- to a
-
- MOV AL, 1
-
- 4. Perform this change in both places where the
-
- XOR AL, AL
-
- instruction was found.
-
-
- 5. Write the updated file.
-
-
-